React applicationにおける非同期処理
(2020/10)
useEffectでだいたいなんとかなる
大規模な状態管理が必要なアプリケーションはそう多くない
画面をまたいでStoreを共有しても画面の要求に応えられない事が多い
オブジェクトベースUIならまだしもコンシューマ向けアプリだと特にタスクベースUIになりがち
(2019/09)
componentのlifecycle methodsの中でやる
code:typescript
public componentDidMount() {
API.get('/path/to/api').then(() => {
...do something
})
}
小規模ならわかりやすい
規模が大きくなったりapplicationが複雑になると1 componentの中で全ての非同期処理を書けなくなってくる
取得したデータを画面をまたいで使いたい
複数のAPI callの待ち合わせやevent dispatchしたい
16.9以降なら useEffectだけで完結できる可能性あるが大規模に状態管理したいならまだReduxに頼る機会はある
Redux
redux-thunk
redux-promise
もうメンテされていない気配
react-side-effect
Reduxに限定しないのであれば使えた
もうメンテされていない気配